#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>


typedef int BTDataType;
typedef struct BinaryNode {
	BTDataType val;
	struct BinaryNode* left;
	struct BinaryNode* right;
}BTNode;

void PreSort(BTNode* root);
void InSort(BTNode* root);
void BackSort(BTNode* root);
int BinaryTreeSize(BTNode* root);
int BinaryTreeLeafSize(BTNode* root);
int BinaryTreeLevelSize(BTNode* root,int k);
int BinaryTreeDepth(BTNode* root);
BTNode* BinaryTreeFind(BTNode* root,BTDataType x);
void BinaryTreeDestroy(BTNode** root);